Method and a system for positioning of an electronic device, and an electronic device

ABSTRACT

The present invention relates to a method for positioning of an electronic device by receiving a code modulated signal transmitted by satellites, position information of the satellites and time data, and by generating local time data. In the method, delta range measurements are taken to at least four different satellites. For each of said at least four satellites, the velocity of the satellite is determined in relation to the positioning receiver. Furthermore, in the method, the delta range measurement results are replaced in an algorithm applying said delta range measurements and velocities to generate reference data for determining the local time data frequency error and the position. The local time data frequency error and the position are determined by searching for the minimum value of said reference data. The invention also relates to a system and an electronic device applying the method.

CROSS-REFERENCE TO RELATED APPLICATIONS

[0001] This application claims priority under 35 USC § 119 to FinnishPatent Application No. 20020359 filed on Feb. 25, 2002.

FIELD OF THE INVENTION

[0002] The present invention relates to a method for positioning of anelectronic device by receiving a code modulated signal transmitted bysatellites, satellite position information and time data, and bygenerating local time data. The invention also relates to a system withreceiving means for receiving code-modulated signals transmitted bysatellites, means for receiving satellite position information and timedata, and means for generating local time data. Furthermore, theinvention relates to an electronic device with means for receivingcode-modulated signals transmitted by satellites, means for receivingsatellite position information and time data, and means for generatinglocal time data.

BACKGROUND OF THE INVENTION

[0003] In positioning systems based on satellite positioning, apositioning receiver attempts to receive signals from at least foursatellites in order to determine the position of the positioningreceiver as well as the time data. An example of such a satellitepositioning system is the GPS system (Global Positioning System),comprising a plurality of satellites orbiting the globe according topredetermined orbits. These satellites transmit Ephemeris data, on thebasis of which the position of a satellite can be determined at eachmoment of time, in case the exact time data used in the satellitepositioning system is known in the positioning receiver. In the GPSsystem, the satellites transmit a spread spectrum signal modulated witha code which is individual for each satellite. Thus, the positioningreceiver can distinguish signals transmitted by different satellitesfrom each other by using a reference code corresponding to a satellitecode generated locally in the positioning receiver.

[0004] Each operating satellite of the GPS system transmits a so-calledL1 signal at the carrier frequency of 1575.42 MHz. This frequency isalso indicated with 154 f₀, where f₀ =10.23 MHz. Furthermore, thesatellites transmit another ranging signal at a carrier frequency of1227.6 MHz called L2, i.e. 120 f₀. In the satellite, these signals aremodulated with at least one pseudo sequence. This pseudo sequence isdifferent for each satellite. As a result of the modulation, acode-modulated wide-band signal is generated. The modulation techniqueused in the receiver makes it possible to distinguish between thesignals transmitted by different satellites, although the carrierfrequencies used in the transmission are substantially the same. Thismodulation technique is called code division multiple access (CDMA). Ineach satellite, for modulating the L1 signal, the pseudo sequence usedis e.g. a so-called C/A code (Coarse/Acquisition code), which is a codefrom the family of the Gold codes. Each GPS satellite transmits a signalby using an individual C/A code. The codes are formed as a modulo-2 sumof two 1023-bit binary sequences. The first binary sequence G1 is formedwith the polynome X¹⁰+X³+1, and the second binary sequence G2 is formedby delaying the polynome X¹⁰+X⁹+X⁸+X⁶+X³+X²+1 in such a way that thedelay is different for each satellite. This arrangement makes itpossible to generate different C/A codes by using identical codegenerators. The C/A codes are thus binary codes whose chipping rate inthe GPS system is 1.023 MHz. The C/A code comprises 1023 chips, whereinthe iteration time (epoch) of the code is 1 ms. The carrier of the L1signal is further modulated by navigation information at a bit rate of50 bit/s. The navigation information comprises information about the“health”, orbit, time data of the satellite, etc.

[0005] To detect the signals of the satellites and to identify thesatellites, the receiver performs acquisition, whereby the receiversearches for the signal of one satellite at a time and attempts to besynchronized and locked to this signal so that the informationtransmitted with the signal can be received and demodulated.

[0006] The positioning receiver must perform the acquisition e.g. whenthe receiver is turned on and also in a situation in which the receiverhas not been capable of receiving the signal of any satellite for a longtime. Such a situation can easily occur e.g. in portable devices,because the device is moving and the antenna of the device is not alwaysin an optimal position in relation to the satellites, which impairs thestrength of the signal coming in the receiver. In portable devices, theaim is also to reduce the power consumption to a minimum. Thus, forexample, a positioning receiver arranged in connection with a wirelesscommunication device is not necessarily kept in operation all the time,but primarily when there is a need to perform positioning. This causes,e.g., the problem that the time taken for the positioning is relativelylong, because the positioning receiver must first perform acquisition,after which it starts to receive navigation information either from thesatellite signal or, e.g., from a base station in a mobile communicationnetwork. The positioning receiver can perform the positioning firstafter it has received a sufficient quantity of navigation information.Further-more, the positioning receiver must take pseudo rangemeasurements which, in receivers of prior art, are started afterreceiving at least the satellite Ephemeris parameters of the navigationinformation. This will prolong the time taken from the turning on of thepositioning receiver to the completion of the first position-time fix.

[0007] The distances between the positioning receiver and the satellitesare called pseudo ranges, because the time is not accurately known inthe positioning receiver. Thus, the determinations of position and timeare iterated until a sufficient accuracy is achieved with respect totime and position. Because the time is not known with absoluteprecision, the position and the time must be determined e.g. bylinearizing a set of equations for each new iteration.

[0008] The calculation of pseudo range can be performed, for example, bymeasuring the code phases of the satellite signals in the receiver.

[0009] The above-mentioned acquisition and frequency control processmust be performed for each satellite signal received in the receiver.Some receivers may have several receiving channels, wherein an attemptis made on each receiving channel to acquire the signal of one satelliteat a time and to find out the information transmitted by this satellite.

[0010] The positioning receiver receives information transmitted bysatellites and performs positioning on the basis of the receivedinformation. In order to perform positioning, the receiver must receivea signal transmitted by at least four different satellites to detect thex, y, z coordinates and the time data. The received navigationinformation is stored in a memory, wherein this stored information canbe used to detect e.g. the Ephemeris data of satellites.

[0011] It may be impossible to maintain the acquisition in situations inwhich the signal is attenuated. In such a situation, the positioningreceiver may not necessarily be capable of measuring pseudo rangeseither, so that positioning cannot be performed in receivers of priorart.

SUMMARY OF THE INVENTION

[0012] It is an aim of the present invention to provide an improvedmethod for positioning, particularly under weak signal conditions, aswell as a system and a positioning receiver applying the method. Theinvention is based on the idea that the positioning receiver measureschanges in the Doppler frequency to determine the change in thesatellite approximation velocity in relation to the positioningreceiver. These velocity measurements are also called delta rangemeasurements in this specification. This delta range corresponds to thederivative of the pseudo range in relation to time, i.e. the change ofthe pseudo range in a time unit. In the method, reference data is formedon the basis of delta range measurements and velocities, to determinethe local time data frequency error and position. For a method accordingto an advantageous embodiment of the invention, an algorithm has beendeveloped, in which the delta range measurement results obtained from atleast four different satellites are placed, to find a minimum of thisalgorithm. The minimum indicates thus the position estimate of thepositioning. To put it more precisely, the method according to thepresent invention is primarily characterized in taking delta rangemeasurements to at least four different satellites, determining thesatellite velocity in relation to the electronic device for each of saidat least four satellites, using said delta range measurements andvelocities to generate reference data for finding out the local timedata frequency error and the position of the electronic device, andsearching for the minimum value of said reference data. The positioningsystem according to the invention is primarily characterized in that itcomprises means for taking delta range measurements to at least fourdifferent satellites, means for determining the velocity of each of saidat least four satellites in relation to the receiving means, means forusing said delta range measurements and velocities to generate referencedata for determining local time data frequency error and position, andmeans for searching for the minimum value of said reference data.Further-more, the electronic device according to the invention isprimarily characterized in that it comprises means for taking deltarange measurements to at least four different satellites, means fordetermining the velocity of each of said at least four satellites inrelation to the electronic device, means for using said delta rangemeasurements and velocities to generate reference data for determininglocal time data frequency error and the position of the electronicdevice, and means for searching for the minimum value of said referencedata.

[0013] The present invention shows remarkable advantages over solutionsof prior art. In the method according to the invention, it is possibleto determine delta range values from even a relatively weak signal;therefore, the positioning can be performed also in a situation in whichpositioning receivers of prior art, which are based on the measurementof pseudo ranges, are not capable of performing the positioning. In themethod according to the invention, there is no need to determinenavigation information included in the signal to be received, which isnecessary in methods of prior art, based on the measurement of pseudoranges. When applying the method of the invention, the initial valueused for the position of the positioning receiver may be considerablyinaccurate, with an error of even several thousands of kilometres, andthe position of the positioning receiver can still be found out at anaccuracy as good as even about a hundred metres. Furthermore, the methodaccording to the invention can be used in connection with other systems,to generate a relatively accurate initial guess for the position of thepositioning receiver. In this way, it is possible to accelerate theaccurate positioning. Furthermore, in the method of the invention, thepositioning receiver only needs to be connected to one stationtransmitting position information, such as the base station of a mobilecommunication network. However, in positioning methods of prior art,which are based on base stations, a connection must be set up to atleast three different base stations.

DESCRIPTION OF THE DRAWINGS

[0014] In the following, the invention will be described in more detailwith reference to the appended drawings, in which

[0015]FIG. 1 shows a positioning receiver according to a preferredembodiment of the invention in a reduced block chart,

[0016]FIG. 2 shows, in a reduced view, a positioning system, in whichthe invention can be applied,

[0017]FIG. 3 shows, in a principle view, the Doppler effect in asatellite positioning system.

DETAILED DESCRIPTION OF THE INVENTION

[0018] In the following detailed description of the invention, thepositioning system will be exemplified with the GPS system, but it willbe obvious that the invention is not limited to this system only.

[0019] Next, we shall derive the algorithm to be applied in the methodaccording to the invention. The frequency of the signal to be receivedin the positioning is not always the same as the frequency of the signalat the moment of transmission. This is primarily due to the fact thatthe satellite is moving in relation to the positioning receiver. Thus,when the satellite is approximating the positioning receiver, thefrequency of the signal is higher than the transmission frequency, andwhen the satellite is moving farther away from the positioning receiver,the frequency of the signal is lower than the transmission frequency.This phenomenon and the frequency shift are called the Doppler effectand the Doppler shift, respectively. This Doppler shift D_(i) can bemodelled by means of a dot product in the following way: $\begin{matrix}{D_{i} = {{- \left( {\frac{w_{i} - w_{u}}{c} \cdot \frac{r_{i} - r_{u}}{{r_{i} - r_{u}}}} \right)}L_{1}}} & (1)\end{matrix}$

[0020] in which w_(i) is the velocity vector of the satellite SV_(i),

[0021] w_(u) is the velocity vector of the positioning receiver,

[0022] c is the speed of light,

[0023] r_(i) is the position vector of the satellite SV_(i),

[0024] r_(u) is the position vector of the positioning receiver, and

[0025] L₁ is the frequency of the signal from the satellite at themoment of transmission.

[0026] The above formula for the Doppler shift D_(i) can be modified toachieve a range rate equation. For notational simplicity, the relativevelocity v_(i) of the satellite is defined as follows:

v _(i) =w _(i) −w _(u)   (2)

[0027] By substituting the formula (2) in the formula (1), the followingequation is obtained: $\begin{matrix}{{v_{i} \cdot \frac{r_{u} - r_{i}}{{r_{u} - r_{i}}}} = \frac{D_{i}c}{L_{1}}} & (3)\end{matrix}$

[0028] From the formula (3), we notice that the left hand side of theequation denotes the rate at which the satellite SV_(i) is approachingthe positioning receiver 2. Consequently, it is a projection of thevelocity vector of the satellite SV_(i) on the direction vector of unitlength between the satellite SV_(i) and the positioning receiver 2. Thisformula (3) can also be presented as a range rate equation, resulting informula (4): $\begin{matrix}{{{- \frac{}{t}}{{r_{u} - r_{i}}}} = \frac{D_{i}c}{L_{1}}} & (4)\end{matrix}$

[0029] Let us now assume that the current time, the velocity of thepositioning receiver 2 as well as Ephemeris data of the satellite SV_(i)are known. It is thus possible to calculate the satellite positionvector r_(i) as well as the relative velocity v_(i). Furthermore, thespeed of light c, the true transmitted frequency L₁ and the true Dopplershift D_(i) are also assumed to be known. Thus, with the precedingassumptions, the only unknown variable in the formula (3) is theposition vector r_(i) of the positioning receiver.

[0030] It can be stated that the vector$\frac{r_{u} - r_{i}}{{r_{u} - r_{i}}}$

[0031] is of unit length; consequently, its length is 1. Thus, the dotproduct of the formula (3) can also be presented in another form, bymeans of the dot product definition a•b=∥a∥·b∥·cos ∠(a,b). Bysubstituting the values a=v_(i),$b = \frac{r_{u} - r_{i}}{{r_{u} - r_{i}}}$

[0032] and ∠(a,b)=60 in this definition, we obtain: $\begin{matrix}{{{{v_{i}} \cdot \cos}\quad \alpha} = \frac{D_{i}c}{L_{1}}} & (5)\end{matrix}$

[0033] in which α=∠(v_(i), r_(u)−r_(i)) is the angle between therelative velocity v_(i) of the satellite SV_(i) and the direction vectorr_(u)−r_(i) of unit length between the satellite SV_(i) and thepositioning receiver 2. When the angle α is solved in the equation (5),the following equation is obtained: $\begin{matrix}{\alpha = {\arccos \left( \frac{D_{i}c}{L_{1}{v_{i}}} \right)}} & (6)\end{matrix}$

[0034] Consequently, the positioning receiver must be located so thatthe direction vector r_(u)−r_(i) of unit length between the satelliteSV_(i) and the positioning receiver 2 forms the angle a with therelative velocity v_(i) of the satellite SV_(i). Thus, possiblepositions form a surface on a circular cone 21 (FIG. 3), whose vertex isat the position of the satellite SV_(i). The central axis of such acircular cone extends, in theory, to infinity in the other direction.The direction of this central axis is the same as the direction ofmovement v_(i) of the satellite at a point r_(i) when the Doppler shiftis positive, and correspondingly, the direction of the central axis isopposite to the direction of the movement v_(i) of the satellite at thepoint r_(i) when the Doppler shift is negative. The angle between thecentral axis of the circular cone and the surface meets the formula (6);consequently,$\alpha = {{\arccos \left( \frac{D_{i}c}{L_{1}{v_{i}}} \right)}.}$

[0035] In the special case in which the Doppler shift equals zero, thepositioning receiver is located on a plane which extends through theposition of the satellite SV_(i) and is orthogonal to the direction ofmovement v_(i) of the satellite SV_(i).

[0036] If there are three Doppler measurements available, it is possibleto solve the three unknown variables which are the coordinates of theposition of the positioning receiver, i.e. the position vector$r_{u} = {\begin{bmatrix}x_{u} \\y_{u} \\z_{u}\end{bmatrix}.}$

[0037] The position to be found is thus at the intersection of the threedifferent circular cones defined by the formula (3). Thus, at leastthree different satellites must be used to have said three Dopplermeasurements available. However, the above-presented assumptions do notnormally hold true in practical situations. In the positioning receiver,it is extremely difficult to measure the Doppler shift with theprecision required for the positioning.

[0038] In order to accurately measure the frequency of a signal, a veryaccurate and stable clock generator must be used. The same applies alsoto accurately generating a desired frequency. In satellites of the GPSsystem, highly accurate atom clocks are used, whose working accuracy iscontrolled at earth stations. If necessary, the time data of thesatellite clocks can be adjusted on the basis of measurements taken bythese earth stations. Consequently, the frequency of the signaltransmitted by the satellites is very close to the correct one, so thatit will not cause a significant bias in the positioning. In conventionalcommercial positioning receivers, however, it is not possible to usesuch atom clocks, e.g. for the reason that they are extremely valuableand require relatively even ambient conditions to secure reliableoperation. In the positioning receiver, it is thus not necessarilypossible to accurately determine the Doppler shift of the signal to bereceived. Let us indicate this receiver clock drift, i.e. the frequencyerror, with the reference {dot over (t)}_(u). If the frequency error{dot over (t)}_(u) is positive, it means that the clock of thepositioning receiver is running fast and, correspondingly, if thefrequency error {dot over (t)}_(u), is negative, the clock of thepositioning receiver is running slow. The frequency error caused by theerror {dot over (t)}_(u) in the measurement of the frequency of thesignal to be received can be indicated as follows:

Δf=−{dot over (t)} _(u) L1   (7)

[0039] In this formula (7), we can notice, for example, that the errorin the measurement of the frequency of the signal to be received in thepositioning receiver is independent of the received frequency. Moreover,we can notice that the error is constant in the sense that it has thesame value for all signals, if the measurements are made at the sametime instant. However, the frequency error does not generally remainconstant but will change in time.

[0040] In the following, we shall denote the frequency estimate measuredby the positioning receiver for the signal transmitted from thesatellite SV_(i) and received at the positioning receiver, with thereference f_(i). This can be placed in the formula (1) which was used tomodel the Doppler shift. Thus, the following expression is obtained:$\begin{matrix}{{f_{i} - L_{1}} = {{D_{i} + {\Delta \quad f} + ɛ_{f_{i}}} = {{\left( {\frac{v_{i}}{c} \cdot \frac{r_{i} - r_{u}}{{r_{i} - r_{u}}}} \right)L_{1}} - {{\overset{.}{t}}_{u}L_{1}} + ɛ_{f_{i}}}}} & (8)\end{matrix}$

[0041] in which ε_(f) _(i) models the noise effective on the frequencymeasurement. By definition, the delta range measurement has the format$\begin{matrix}{{\overset{.}{\rho}}_{i} = {\frac{f_{i} - L_{1}}{L_{1}}c}} & (9)\end{matrix}$

[0042] Combining the formulas (8) and (9) and defining the noiseeffective on the delta range measurement to be${ɛ_{{\overset{.}{\rho}}_{i}} = \frac{ɛ_{f_{\quad i}}c}{L_{1}}},$

[0043] the following physical definition is obtained for the deltarange: $\begin{matrix}{{\overset{.}{\rho}}_{i} = {{v_{i} \cdot \frac{r_{i} - r_{u}}{{r_{i} - r_{u}}}} + {c\quad {\overset{.}{t}}_{u}} + ɛ_{{\overset{.}{\rho}}_{i}}}} & (10)\end{matrix}$

[0044] For notational simplicity, we shall indicate the effect of thefrequency error of the positioning receiver on the delta rangemeasurement c{dot over (t)}_(u) with a variable d. The unit of thisvariable d is the unit of velocity m/s. Disregarding the measuring errorε_({dot over (ρ)}i), in the formula (10), the expression for the truedelta range results in: $\begin{matrix}{{\overset{.}{\rho}}_{T\quad i} = {{v_{i} \cdot \frac{r_{i} - r_{u}}{{r_{i} - r_{u}}}} + d}} & (11)\end{matrix}$

[0045] Now, the true delta range {dot over (ρ)}_(Ti) can be approximatedwith the measured delta range {dot over (ρ)}_(i). Using the equation(11), it is possible to form the following equation which contains fourunknown variables, namely the coordinates r_(u)∈R³ and the frequencyerror d∈R: $\begin{matrix}{{{v_{i} \cdot \frac{r_{i} - r_{u}}{{r_{i} - r_{u}}}} + d - {\overset{.}{\rho}}_{i}} = 0} & (12)\end{matrix}$

[0046] Let us now assume that there are n substantially simultaneousdelta range measurements available. From each measurement, it ispossible to form an equation similar to the formula (12), wherein allthe measurements yield the system of n equations: $\begin{matrix}\left\{ \begin{matrix}{{{v_{1} \cdot \frac{r_{1} - r_{u}}{{r_{1} - r_{u}}}} + d - {\overset{.}{\rho}}_{1}} = 0} \\{{{v_{2} \cdot \frac{r_{2} - r_{u}}{{r_{2} - r_{u}}}} + d - {\overset{.}{\rho}}_{2}} = 0} \\\vdots \\{{{v_{n} \cdot \frac{r_{n} - r_{u}}{{r_{n} - r_{u}}}} + d - {\overset{.}{\rho}}_{n}} = 0}\end{matrix} \right. & (13)\end{matrix}$

[0047] in which v_(i),i=1 . . . n are the relative velocity vectors ofthe satellites SV_(i), assumed to be known,

[0048] r_(i), i=1 . . . n are the position vectors of the satellitesSV_(i), assumed to be known,

[0049] {dot over (ρ)}_(i), i=1 . . . n are the delta range measurements,assumed to be known,

[0050] r_(u) is the position vector of the positioning receiver, whichis unknown, and

[0051] d is the unknown receiver clock drift effect on the delta rangemeasurements.

[0052] Consequently, the formula (12) contains four unknown factorsx_(u), y_(u), z_(u), and d. This equation (13) will now be used in themethod according to the present invention as the basic equation forpositioning based on the Doppler determinations, which will be developedfurther to the actual function to be used in the positioningcalculation.

[0053] To simplify the denotations further, we shall now define a vectorx which corresponds to the position and frequency error of thepositioning receiver. $\begin{matrix}{x = {\begin{bmatrix}r_{u} \\d\end{bmatrix} = {\begin{bmatrix}x_{u} \\y_{u} \\z_{u} \\d\end{bmatrix} \in R^{4}}}} & (14)\end{matrix}$

[0054] Furthermore, we will define a vector for the delta rangemeasurement

{dot over (ρ)}=[{dot over (ρ)}₁{dot over (ρ)}₂ . . . {dot over(ρ)}_(n)]^(T)  (15)

[0055] which is composed of n delta ranges measured from the signals ofthe satellite SV_(i).

[0056] Consequently, in the positioning, the aim is to find such avector x which best corresponds to the position of the receiver eachtime. On the basis of the formula (14), it is obvious that at least fourmeasuring results, i.e. the signals of four different satellites, arerequired to solve the vector with four variables.

[0057] Solving the set of equations according to the formula (13), basedon the delta ranges, is considerably more difficult than solving sets ofequations used in methods of prior art, based on pseudo ranges. This isdue, for example, to the fact that the formula (13) contains therelative velocity vector v_(i) of the satellite, which is influenced notonly by the movement of the satellite SV_(i) but also by the movement ofthe positioning receiver.

[0058] In the above formula (13), a physical model is defined for themeasurements of delta ranges. Assuming that the average value of thenoise component ε_({dot over (ρ)}i) is 0, the following definition isobtained for the assumed delta range vector: $\begin{matrix}{\hat{\overset{.}{\rho}} = \begin{bmatrix}{{v_{1} \cdot \frac{r_{1} - {\hat{r}}_{u}}{{r_{1} - {\hat{r}}_{u}}}} + \hat{d}} \\{{v_{2} \cdot \frac{r_{2} - {\hat{r}}_{u}}{{r_{2} - {\hat{r}}_{u}}}} + \hat{d}} \\\vdots \\{{v_{n} \cdot \frac{r_{n} - {\hat{r}}_{u}}{{r_{n} - {\hat{r}}_{u}}}} + \hat{d}}\end{bmatrix}} & (16)\end{matrix}$

[0059] In the definition of this assumed delta range vector, it has beenassumed that the positioning receiver is at a position {circumflex over(r)}_(u) and the frequency error is {circumflex over (d)}.

[0060] The aim of the positioning is thus to obtain a solution in whichthe value of the assumed delta range vector is equal to the true deltarange vector, i.e. {dot over ({circumflex over (ρ)})}={dot over (ρ)}. Topresent this problem, we will further define an expression for thedifference in the delta ranges $\begin{matrix}{{p\left( \hat{x} \right)} = {{\hat{\overset{.}{\rho}} - \overset{.}{\rho}} = \begin{bmatrix}{{v_{1} \cdot \frac{r_{1} - {\hat{r}}_{u}}{{r_{1} - {\hat{r}}_{u}}}} + \hat{d} - {\overset{.}{\rho}}_{1}} \\{{v_{2} \cdot \frac{r_{2} - {\hat{r}}_{u}}{{r_{2} - {\hat{r}}_{u}}}} + \hat{d} - {\overset{.}{\rho}}_{2}} \\\vdots \\{{v_{n} \cdot \frac{r_{n} - {\hat{r}}_{u}}{{r_{n} - {\hat{r}}_{u}}}} + \hat{d} - {\overset{.}{\rho}}_{n}}\end{bmatrix}}} & (17)\end{matrix}$

[0061] This is a vector valued function with the position of thepositioning receiver and the frequency error as arguments. Thecomponents of the vector function are differences between the predicteddelta ranges (assuming that x={circumflex over (x)}) and the measureddelta ranges {dot over (ρ)}.

[0062] From the formula (13), it can be noticed that if the estimatedvector {circumflex over (x)} is equal to the vector x indicating thereal position and frequency error, the value of the functionp({circumflex over (x)}) according to formula (17) must be a zerovector. In this case, the positioning problem can be presented in theform $\begin{matrix}{{p\left( \hat{x} \right)} = {{p\left( {{\hat{r}}_{u},\hat{d}} \right)} = {\begin{bmatrix}{{v_{1} \cdot \frac{r_{1} - {\hat{r}}_{u}}{{r_{1} - {\hat{r}}_{u}}}} + \hat{d} - {\overset{.}{\rho}}_{1}} \\{{v_{2} \cdot \frac{r_{2} - {\hat{r}}_{u}}{{r_{2} - {\hat{r}}_{u}}}} + \hat{d} - {\overset{.}{\rho}}_{2}} \\\vdots \\{{v_{n} \cdot \frac{r_{n} - {\hat{r}}_{u}}{{r_{n} - {\hat{r}}_{u}}}} + \hat{d} - {\overset{.}{\rho}}_{n}}\end{bmatrix} = \begin{bmatrix}0 \\0 \\\vdots \\0\end{bmatrix}}}} & (18)\end{matrix}$

[0063] This is further developed to a function f({circumflex over(r)}_(u),{circumflex over (d)})=∥p({circumflex over (r)}_(u),{circumflexover (d)}∥². In the positioning receiver, the aim is to find the minimumvalue of the function f({circumflex over (r)}_(u),{circumflex over (d)})On the basis of this minimum value, it is possible to find out theposition data of the positioning receiver. An attempt to find theminimum value of the function can be made by searching for the minimumvalue of one or more components x_(u), y_(u), z_(u), d of the vector$x = {\begin{bmatrix}r_{u} \\d\end{bmatrix} = {\begin{bmatrix}x_{u} \\y_{u} \\z_{u} \\d\end{bmatrix} \in {R^{4}.}}}$

[0064] However, it will be obvious that the invention is not limitedsolely to searching for the minimum value of said components, but alsosearching for the minimum values of other suitable variables can beapplied in connection with the invention.

[0065] Several minimizing methods are known, of which the Gauss-Newtonmethod is mentioned in this context and will be used in the followingexample in the search for the minimum point of the functionf({circumflex over (r)}_(u),{circumflex over (d)}). Let us firstapproximate the function p({circumflex over (x)}) of the delta range bythe first order Taylor series at the estimated point of location x_(k):$\begin{matrix}\left. {{p\left( {x_{k} + {\Delta \quad x}} \right)} \approx {{p\left( x_{k} \right)} + \frac{\partial{p\left( \hat{x} \right)}}{\partial\hat{x}}}} \middle| {}_{\hat{x} = x_{k}}{\Delta \quad x} \right. & (19)\end{matrix}$

[0066] in which Δx is a vector whose norm is relatively small. Let usindicate the derivative matrix more shortly with:$\left. {{G\left( x_{k} \right)} \equiv \frac{\partial{p\left( \hat{x} \right)}}{\partial\hat{x}}} \middle| {}_{\hat{x} = x_{k}}. \right.$

[0067] When the Gauss-Newton method is used for solving the minimumpoint of the function f, the following equation is obtained for thecorrection term used in the iteration:

Δx=−{[G(x _(k))]^(T) [G(x _(k))]}⁻¹ [G(x _(k))]^(T) p(x _(k))   (20)

[0068] Thus, to perform positioning, an initial estimate (estimatedposition) x₀ is first selected for the position. This is followed bycalculating the differences in the delta ranges and the derivativematrix G(x_(k)). At the first time, x_(k)=x₀. The correction term iscalculated according to the equation (20), after which it is possible tocompute new estimates for the position and for the frequency error byadding the previous estimate and the correction term: x_(k+1)=x_(k)+Δx.Next, the norm of the correction term is examined, and if it is lowerthan a set threshold value, the iteration can be terminated and theresult is a relatively accurate estimate for the position of thepositioning receiver and for the frequency error. If the absolute valueof the correction term is not sufficiently low, the above stepsfollowing the selection of the initial estimate are iterated until asufficiently low value for the correction term is achieved.

[0069] We shall now describe the calculation of the derivative matrixaccording to an advantageous embodiment. Since${{G\left( x_{k} \right)} = \frac{\partial{p\left( \hat{x} \right)}}{\partial\hat{x}}},$

[0070] the matrix G contains as many rows as the function p({circumflexover (x)}) and as many columns as the estimate {circumflex over (x)} forthe position and the frequency error. Consequently, G({circumflex over(x)})∈R^(n×4),in which n is the number of satellites used in thecomputation. The matrix G can be found relatively easily bydifferentiation of the function p({circumflex over (x)}). This can beperformed for example in the following way: $\begin{matrix}{{G\left( x_{k} \right)} = {\frac{\partial{p\left( \hat{x} \right)}}{\partial\hat{x}} = {\frac{\partial{p\left( \hat{x} \right)}}{\partial\begin{bmatrix}{\hat{r}}_{u} \\\hat{d}\end{bmatrix}} = {\begin{bmatrix}\frac{\partial p_{1}}{\partial{\hat{r}}_{u}} & \frac{\partial p_{1}}{\partial\hat{d}} \\\frac{\partial p_{2}}{\partial{\hat{r}}_{u}} & \frac{\partial p_{2}}{\partial\hat{d}} \\\vdots & \vdots \\\frac{\partial p_{n}}{\partial{\hat{r}}_{u}} & \frac{\partial p_{n}}{\partial\hat{d}}\end{bmatrix} \in R^{n \times 4}}}}} & (21)\end{matrix}$

[0071] in which the variables p_(i) are the components of the vectorfunction p. On the basis of the formula (17), it is possible to find outthe formula for computing one component of the vector function p:$\begin{matrix}{{p_{i}\left( \hat{x} \right)} = {{v_{i} \cdot \frac{r_{i} - {\hat{r}}_{u}}{{{r_{i} - {\hat{r}}_{u}}}}} + \hat{d} - {\overset{.}{\rho}}_{i}}} & (22)\end{matrix}$

[0072] When the i^(th) component of the vector function is subjected topartial derivation in relation to the estimated position {circumflexover (r)}_(u), the result is $\begin{matrix}{\frac{\partial p_{i}}{\partial{\hat{r}}_{u}} = {\frac{\partial\quad}{\partial{\hat{r}}_{u}}\left\lbrack {{v_{i} \cdot \frac{r_{i} - {\hat{r}}_{u}}{{{r_{i} - {\hat{r}}_{u}}}}} + \hat{d} - {\overset{.}{\rho}}_{i}} \right\rbrack}} & (23)\end{matrix}$

[0073] In this formula (23), the variables v_(i), r_(i), {circumflexover (d)} and {dot over (ρ)}_(i) are constant in relation to theestimated position {circumflex over (r)}_(u) of the positioningreceiver. We shall apply the expression (fg)′=f′g+fg′ of the derivativeof the product in the formula (23). Thus, the formula (23) is convertedto the form $\begin{matrix}\begin{matrix}{\frac{\partial p_{i}}{\partial{\hat{r}}_{u}} = {{{v_{i} \cdot \left( {r_{i} - {\hat{r}}_{u}} \right)}\frac{\partial\quad}{\partial{\hat{r}}_{u}}\frac{1}{{{r_{i} - {\hat{r}}_{u}}}}} + {\frac{v_{i}^{T}}{{{r_{i} - {\hat{r}}_{u}}}}\frac{\partial\quad}{\partial{\hat{r}}_{u}}\left( {r_{i} - {\hat{r}}_{u}} \right)}}} \\{= {{{v_{i} \cdot \left( {r_{i} - {\hat{r}}_{u}} \right)}\frac{1}{{{{r_{i} - {\hat{r}}_{u}}}}^{2}}\frac{\left( {r_{i} - {\hat{r}}_{u}} \right)^{T}}{{{r_{i} - {\hat{r}}_{u}}}}} - {\frac{v_{i}^{T}}{{{r_{i} - {\hat{r}}_{u}}}}I_{3 \times 3}}}} \\{= \left\{ {{\left( {\frac{v_{i}}{{{r_{i} - {\hat{r}}_{u}}}} \cdot \frac{r_{i} - {\hat{r}}_{u}}{{{r_{i} - {\hat{r}}_{u}}}}} \right)\frac{r_{i} - {\hat{r}}_{u}}{{{r_{i} - {\hat{r}}_{u}}}}} - {\left( {\frac{r_{i} - {\hat{r}}_{u}}{{{r_{i} - {\hat{r}}_{u}}}} \cdot \frac{r_{i} - {\hat{r}}_{u}}{{{r_{i} - {\hat{r}}_{u}}}}} \right)\frac{v_{i}}{{{r_{i} - {\hat{r}}_{u}}}}}} \right\}^{T}}\end{matrix} & (24)\end{matrix}$

[0074] in which I_(3×3) is an identity matrix. The right hand side ofthe equation (24) can be transformed into a geometrically moreillustrative form by applying the vector triple product formula:a×(b×c)=(a•c)b−(a•b)c, in which$a = {c = {{\frac{r_{i} - {\hat{r}}_{u}}{{{r_{i} - {\hat{r}}_{u}}}}\quad {and}\quad b} = {- \frac{v_{i}}{{{r_{i} - {\hat{r}}_{u}}}}}}}$

[0075] The result is the expression $\begin{matrix}\begin{matrix}{\frac{\partial{p_{i}\left( \hat{x} \right)}}{\partial{\hat{r}}_{u}} = \left\{ {\frac{r_{i} - {\hat{r}}_{u}}{{{r_{i} - {\hat{r}}_{u}}}}\quad \times \left( {\frac{- v_{i}}{{{r_{i} - {\hat{r}}_{u}}}} \times \frac{r_{i} - {\hat{r}}_{u}}{{{r_{i} - {\hat{r}}_{u}}}}} \right)} \right\}^{T}} \\{= \left\{ {\frac{r_{i} - {\hat{r}}_{u}}{{{r_{i} - {\hat{r}}_{u}}}}\quad \times \left( {\frac{r_{i} - {\hat{r}}_{u}}{{{r_{i} - {\hat{r}}_{u}}}} \times \frac{v_{i}}{{{r_{i} - {\hat{r}}_{u}}}}} \right)} \right\}^{T}}\end{matrix} & (25)\end{matrix}$

[0076] The cross product of two vectors is always orthogonal to both ofthe vectors. Thus, the partial derivative$\frac{\partial p_{i}}{\partial{\hat{r}}_{u}}$

[0077] lies in the same plane with both the satellite relative velocityvector v_(i) and the estimated vector r_(i)−{circumflex over (r)}_(u)from the positioning receiver to the satellite. Moreover, the satelliterelative velocity vector and said estimated vector are perpendicular toeach other.

[0078] To complete the calculation of the matrix G, we must stilldetermine the partial derivative of the function p_(i) of the differencebetween the delta ranges with respect to the frequency error$d,{\frac{\partial{p_{i}\left( \hat{x} \right)}}{\partial d}.}$

[0079] From the equation (22), it can be seen that$\frac{\partial{p_{i}\left( \hat{x} \right)}}{\partial d} = 1.$

[0080] Now, all the necessary partial derivatives have been determined,wherein by replacing them in the equation (21), the following equationis obtained for the matrix G: $\begin{matrix}{{G\left( \hat{x} \right)} = \begin{bmatrix}{\left\{ {\frac{r_{1} - {\hat{r}}_{u}}{{r_{1} - {\hat{r}}_{u}}} \times \left( {\frac{r_{1} - {\hat{r}}_{u}}{{r_{1} - {\hat{r}}_{u}}} \times \frac{v_{1}}{{r_{1} - {\hat{r}}_{u}}}} \right)} \right\}^{T}1} \\{\left\{ {\frac{r_{2} - {\hat{r}}_{u}}{{r_{2} - {\hat{r}}_{u}}} \times \left( {\frac{r_{2} - {\hat{r}}_{u}}{{r_{2} - {\hat{r}}_{u}}} \times \frac{v_{2}}{{r_{2} - {\hat{r}}_{u}}}} \right)} \right\}^{T}1} \\\vdots \\{\left\{ {\frac{r_{n} - {\hat{r}}_{u}}{{r_{n} - {\hat{r}}_{u}}} \times \left( {\frac{r_{n} - {\hat{r}}_{u}}{{r_{n} - {\hat{r}}_{u}}} \times \frac{v_{n}}{{r_{n} - {\hat{r}}_{u}}}} \right)} \right\}^{T}1}\end{bmatrix}} & (26)\end{matrix}$

[0081] Thus, in connection with the positioning, the matrix G can beadvantageously solved by the formula (26).

[0082] The above-presented positioning method can be applied inpositioning receivers, for example in the positioning receiver 2 shownin FIG. 1. In this example, the positioning receiver 2 is implemented inconnection with an electronic device 1, such as a wireless communicationdevice, but it will be obvious that the invention is not limited solelyto this embodiment. The positioning receiver 2 according to theinvention can also be applied, within the scope of the presentinvention, as a separate electronic device without being connected toanother device.

[0083] A majority of the steps of the method according to the inventioncan be implemented by software, as program commands in the processor,such as a digital signal processor (DSP), in the control block 11. Forthe positioning computing, the delta ranges must be measured to at leastfour different satellites SV_(i). The positioning receiver 2 preferablycomprises at least four receiving channels, wherein it is possible toreceive the signals of four satellites simultaneously. In FIG. 1, theblock chart of the positioning receiver 2 shows, for clarity, thestructure of only one such receiving channel, the other receivingchannels being preferably substantially identical. The repetition-codedsignal to be received via an antenna 3 is amplified in a high-frequencyamplifier 4 and converted by means of a clock signal generated by aclock generator 5 and a frequency synthesizer 6 preferably to anintermediate frequency or directly to a baseband in a converter block 7.At this stage, the signal is preferably still in analog format, whereinit is converted to a digital signal in an analog-to-digital converter 8.The analog-to-digital converter 8 provides not only a digital receivingsignal but also a control to an automatic gain control (AGC) block 9 tolevel out variations in strength of the received signal in a way knownas such. The digital signal converted to an intermediate frequency or tothe base-band is led to a digital monitoring block 10, to find out thecarrier frequency of the received signal. As the difference betweenthese carrier frequencies determined in the different blocks and theknown transmission frequency, the delta range measurements for thedifferent satellites are obtained, to be used in the above-describedequation to be minimized. Some of the above-mentioned blocks of thereceiving channel may be common to all the receiving channels, such asthe antenna 3 and the high-frequency amplifier 4.

[0084] To execute the minimization, the positioning receiver 2 must alsobe supplied with satellite Ephemeris data and time data, if these dataare not already available in the positioning receiver 2 or if they arenot up to date. The data can be transmitted, for example, from a basestation 20 of a mobile communication network (FIG. 2), if necessary. Ifthe positioning receiver 2 has sufficiently up-to-date Ephemeris data,the only data to be transmitted to the positioning data when startingthe positioning is the time data of the satellite system. The Ephemerisdata and the time data can be received, for example, by a second antenna13, from which the signals are led to mobile communication means 12 forprocessing in a way known as such. Preferably, the data are also storedin memory means 14. Of the Ephemeris data, the data of those satellitesare retrieved, whose signal carrier is processed in the receivingchannels of the positioning receiver. The time data is used as time datacommon to all the receiving channels. On the basis of the Ephemerisdata, it is possible in the positioning receiver to determine theposition of the satellites at a given moment of time. The satelliteposition data can be utilized to compute the velocity v; of thesatellites in relation to the receiver. The position, velocity and timeof the satellites are placed in the set of equations to be minimized,after which the positioning computing can be started preferably in thecontrol block 11.

[0085] By the method of the invention, it is possible to achieve anaccuracy in the order of 100 m for the position of the positioningreceiver 2. To achieve this, it is sufficient that the positioning dataused as the initial estimate is correct at an accuracy of some thousandsof kilometres, which means in practice that the method can be used todetermine the position of the positioning receiver at said accuracy at avery high probability. The positioning data obtained by the method canbe used, if necessary, as an initial value for the position in anotherpositioning method, if more accurate position data is yet to beobtained.

[0086] The electronic device 1 of FIG. 1 further comprises, for example,a display 15, a keypad 16 and audio means 17, 18, 19, but it will beobvious that in practical applications, the structure of the electronicdevice 1 may differ from that shown in FIG. 1. Furthermore, thepositioning functions include various acquisition and tracking functionswhich need not be discussed in more detail in this context.

[0087] It is obvious that the present invention is not limited solely tothe embodiments presented herein, but it can be modified within thescope of the appended claims.

1. A method for positioning an electronic device in which a codemodulated signal transmitted by satellites, Position information of thesatellites and time data are received, and local time data is generated,wherein in delta range measurements are taken for at least fourdifferent satellite, the satellite velocity is determined in relation tothe electronic device for each of said at least four satellites, saiddelta range measurements and velocities are used for generatingreference data to find out the frequency error of the local time dataand the position of the electronic device, and the minimum value of saidreference data is searched.
 2. The method according to claim 1, using analgorithm as said reference data, replacing the delta range measurementresults in said algorithm, and finding the minimum value for saidalgorithm.
 3. The method according to claim 2, wherein said algorithmused is the function f(p({circumflex over (r)}_(u),{circumflex over(d)})), in which${{p\left( {{\hat{r}}_{u},\hat{d}} \right)} = \begin{bmatrix}{{v_{1} \cdot \frac{r_{1} - {\hat{r}}_{u}}{{r_{1} - {\hat{r}}_{u}}}} + \hat{d} - {\overset{.}{\rho}}_{1}} \\{{v_{2} \cdot \frac{r_{2} - {\hat{r}}_{u}}{{r_{2} - {\hat{r}}_{u}}}} + \hat{d} - {\overset{.}{\rho}}_{2}} \\\vdots \\{{v_{n} \cdot \frac{r_{n} - {\hat{r}}_{u}}{{r_{n} - {\hat{r}}_{u}}}} + \hat{d} - {\overset{.}{\rho}}_{n}}\end{bmatrix}},$

v_(i),i=1 . . . n are said velocity vectors of the satellites inrelation to the electronic device, r_(i),i=1 . . . n are the positionvectors of the satellites, {dot over (ρ)}_(i),i=1 . . . n are the deltarange measurements, {circumflex over (r)}_(u) is the estimated positionvector of the electronic device, {circumflex over (d)} is the effect ofthe estimated frequency error of the electronic device on the deltarange measurements, and n≧4, wherein in the search for the minimumvalue, {circumflex over (r)}_(u) and {circumflex over (d)} aredetermined.
 4. The method according to claim 2, wherein said algorithmused is the function f({circumflex over (r)}_(u),{circumflex over(d)})=∥p({circumflex over (r)}_(u){circumflex over (d)}∥^(m), in which${{p\left( {{\hat{r}}_{u},\hat{d}} \right)} = \begin{bmatrix}{{v_{1} \cdot \frac{r_{1} - {\hat{r}}_{u}}{{r_{1} - {\hat{r}}_{u}}}} + \hat{d} - {\overset{.}{\rho}}_{1}} \\{{v_{2} \cdot \frac{r_{2} - {\hat{r}}_{u}}{{r_{2} - {\hat{r}}_{u}}}} + \hat{d} - {\overset{.}{\rho}}_{2}} \\\vdots \\{{v_{n} \cdot \frac{r_{n} - {\hat{r}}_{u}}{{r_{n} - {\hat{r}}_{u}}}} + \hat{d} - {\overset{.}{\rho}}_{n}}\end{bmatrix}},$

v_(i),i=1 . . . n are said velocity vectors of the satellites inrelation to the electronic device, r_(i),i=1 . . . n are the positionvectors of the satellites, {dot over (ρ)}_(i),i=1 . . . n are the deltarange measurements, {circumflex over (r)}_(u) is the estimated positionvector of the electronic device, {circumflex over (d)} is the effect ofthe estimated frequency error of the electronic device (1) on the deltarange measurements, m∈R, and n≧4, wherein in the search for the minimumvalue, {circumflex over (r)}_(u) and {circumflex over (d)} aredetermined.
 5. The method according to claim 4, wherein m=2.
 6. Themethod according to claim 3, wherein for the search of the minimumvalue, the matrix $\begin{matrix}{{G\left( \hat{x} \right)} = \begin{bmatrix}{\left\{ {\frac{r_{1} - {\hat{r}}_{u}}{{r_{1} - {\hat{r}}_{u}}} \times \left( {\frac{r_{1} - {\hat{r}}_{u}}{{r_{1} - {\hat{r}}_{u}}} \times \frac{v_{1}}{{r_{1} - {\hat{r}}_{u}}}} \right)} \right\}^{T}1} \\{\left\{ {\frac{r_{2} - {\hat{r}}_{u}}{{r_{2} - {\hat{r}}_{u}}} \times \left( {\frac{r_{2} - {\hat{r}}_{u}}{{r_{2} - {\hat{r}}_{u}}} \times \frac{v_{2}}{{r_{2} - {\hat{r}}_{u}}}} \right)} \right\}^{T}1} \\\vdots \\{\left\{ {\frac{r_{n} - {\hat{r}}_{u}}{{r_{n} - {\hat{r}}_{u}}} \times \left( {\frac{r_{n} - {\hat{r}}_{u}}{{r_{n} - {\hat{r}}_{u}}} \times \frac{v_{n}}{{r_{n} - {\hat{r}}_{u}}}} \right)} \right\}^{T}1}\end{bmatrix}} & (26)\end{matrix}$

is solved.
 7. The method according to the claim 1, wherein for thesearch of the minimum value of the reference value, the minimum value ofone or more components of the vector $x = {\begin{bmatrix}r_{u} \\d\end{bmatrix} = {\begin{bmatrix}x_{u} \\y_{u} \\_{u} \\d\end{bmatrix} \in R^{4}}}$

is searched.
 8. The method according to the claim 1, wherein it isassumed that the electronic device is stationary, wherein the velocityvectors of the satellites are used as the velocity vectors.
 9. A systemcomprising receiving means for receiving code modulated signalstransmitted by satellites, means for receiving position information ofthe satellites and time data, and means for generating local time data,wherein it comprises means for taking delta range measurements to atleast four different satellites, means for determining the velocity ofeach of said at least four satellites in relation to the receivingmeans, means for using said delta range measurements and velocities forgenerating reference data to determine the frequency error of the localtime data and position, and means for searching for the minimum value ofsaid reference data.
 10. The system according to claim 9, wherein analgorithm is arranged to be used as said reference data, that the deltarange measurement results are arranged to be placed in said algorithm,and that the means for searching for the minimum value of said referencedata comprise means for searching for the minimum value of saidalgorithm.
 11. The system according to claim 10, wherein said algorithmis the function f (p({circumflex over (r)}_(u),{circumflex over (d)})),in which ${{p\left( {{\hat{r}}_{u},\hat{d}} \right)} = \begin{bmatrix}{{v_{1} \cdot \frac{r_{1} - {\hat{r}}_{u}}{{r_{1} - {\hat{r}}_{u}}}} + \hat{d} - {\overset{.}{\rho}}_{1}} \\{{v_{2} \cdot \frac{r_{2} - {\hat{r}}_{u}}{{r_{2} - {\hat{r}}_{u}}}} + \hat{d} - {\overset{.}{\rho}}_{2}} \\\vdots \\{{v_{n} \cdot \frac{r_{n} - {\hat{r}}_{u}}{{r_{n} - {\hat{r}}_{u}}}} + \hat{d} - {\overset{.}{\rho}}_{n}}\end{bmatrix}},$

v_(i),i=1 . . . n are said velocities of the satellites, r_(i),i=1 . . .n are the position data of the satellites, {dot over (ρ)}_(i),i=1 . . .n are the delta range measurements, {circumflex over (r)}_(u) is theposition vector of the receiving means, and {circumflex over (d)} is theeffect of the frequency error of the receiving means on the delta rangemeasurements, and n≧4.
 12. The system according to claim 10, whereinsaid algorithm is the function f({circumflex over (r)}_(u),{circumflexover (d)})=∥p({circumflex over (r)}_(u),{circumflex over (d)})∥^(m), inwhich ${{p\left( {{\hat{r}}_{u},\hat{d}} \right)} = \begin{bmatrix}{{v_{1} \cdot \frac{r_{1} - {\hat{r}}_{u}}{{r_{1} - {\hat{r}}_{u}}}} + \hat{d} - {\overset{.}{\rho}}_{1}} \\{{v_{2} \cdot \frac{r_{2} - {\hat{r}}_{u}}{{r_{2} - {\hat{r}}_{u}}}} + \hat{d} - {\overset{.}{\rho}}_{2}} \\\vdots \\{{v_{n} \cdot \frac{r_{n} - {\hat{r}}_{u}}{{r_{n} - {\hat{r}}_{u}}}} + \hat{d} - {\overset{.}{\rho}}_{n}}\end{bmatrix}},$

v_(i),i=1 . . . n are said velocities of the satellites, r_(i),i=1 . . .n are the position data of the satellites, {dot over (ρ)}_(i),i=1 . . .n are the delta range measurements, {circumflex over (r)}_(u) is theposition vector of the positioning receiver, and {circumflex over (d)}is the effect of the time frequency error of the positioning receiver onthe delta range measurements, and n≧4.
 13. The system according to claim12, wherein m=2.
 14. The system according to claim 11, wherein the meansfor searching for the minimum value of the algorithm comprise means forsolving the matrix ${G\left( \hat{x} \right)} = {\begin{bmatrix}\left\{ {\frac{r_{1} - {\hat{r}}_{u}}{{r_{1} - {\hat{r}}_{u}}} \times \left( {\frac{r_{1} - {\hat{r}}_{u}}{{r_{1} - {\hat{r}}_{u}}} \times \frac{v_{1}}{{r_{1} - {\hat{r}}_{u}}}} \right)} \right\}^{T} & 1 \\\left\{ {\frac{r_{2} - {\hat{r}}_{u}}{{r_{2} - {\hat{r}}_{u}}} \times \left( {\frac{r_{2} - {\hat{r}}_{u}}{{r_{2} - {\hat{r}}_{u}}} \times \frac{v_{2}}{{r_{2} - {\hat{r}}_{u}}}} \right)} \right\}^{T} & 1 \\\vdots & {\vdots \quad} \\\left\{ {\frac{r_{n} - {\hat{r}}_{u}}{{r_{n} - {\hat{r}}_{u}}} \times \left( {\frac{r_{n} - {\hat{r}}_{u}}{{r_{n} - {\hat{r}}_{u}}} \times \frac{v_{n}}{{r_{n} - {\hat{r}}_{u}}}} \right)} \right\}^{T} & 1\end{bmatrix}.}$


15. An electronic device comprising means for receiving code modulatedsignals transmitted by satellites, means for receiving positioninformation of the satellites and time data, and means for generatinglocal time data, wherein the electronic device comprises means fortaking delta range measurements to at least four different satellites,means for determining the velocities of each of said at least foursatellites in relation to the electronic device, means for using saiddelta range measurements and velocities to generate reference data fordetermining the frequency error of the local time data and position, andmeans for searching for the minimum value of said reference data. 16.The electronic device according to claim 15, wherein an algorithm isarranged to be used as said reference data, that the delta rangemeasurement results are arranged to be replaced in said algorithm, andthat the means for searching for the minimum value of said referencedata comprise means for searching for the minimum value of saidalgorithm.
 17. The electronic device according to claim 16, wherein saidalgorithm is the function f(p({circumflex over (r)}_(u),{circumflex over(d)})), in which${{p\left( {{\hat{r}}_{u},\hat{d}} \right)} = \begin{bmatrix}{{v_{1} \cdot \frac{r_{1} - {\hat{r}}_{u}}{{r_{1} - {\hat{r}}_{u}}}} + \hat{d} - {\overset{.}{\rho}}_{1}} \\{{v_{2} \cdot \frac{r_{2} - {\hat{r}}_{u}}{{r_{2} - {\hat{r}}_{u}}}} + \hat{d} - {\overset{.}{\rho}}_{2}} \\\vdots \\{{v_{n} \cdot \frac{r_{n} - {\hat{r}}_{u}}{{r_{n} - {\hat{r}}_{u}}}} + \hat{d} - {\overset{.}{\rho}}_{n}}\end{bmatrix}},$

v_(i),i=1 . . . n are said velocities of the satellites, r_(i),i=1 . . .n are the position of the satellites, {dot over (ρ)}_(i),i=1 . . . n arethe delta range measurements, {circumflex over (r)}_(u) is the positionvector of the electronic device, and {circumflex over (d)} is the effectof the frequency error of the electronic device on the delta rangemeasurements, and n≧4.
 18. The electronic device according to claim 15,wherein it is a positioning receiver.
 19. The electronic deviceaccording to claim 15, wherein it is a wireless communication device.